package io.modifier.basic.compose.hooks

import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
import androidx.compose.runtime.rememberUpdatedState

/** 返回 latest 值的 Hook 可以避免使用解构时出现闭包问题 **/
@Composable
fun <T> useLatestRef(value: T): Ref<T> = useRef(default = value).apply { current = value }

/**
 *
 * @param T
 * @param value
 * @return
 */
@Composable
fun <T> useLatestState(value: T): State<T> = rememberUpdatedState(value)
